package org.groupg.practice.juneau;

import org.apache.juneau.http.annotation.Content;
import org.apache.juneau.http.annotation.Header;
import org.apache.juneau.http.annotation.Query;
import org.apache.juneau.http.remote.Remote;
import org.apache.juneau.http.remote.RemotePost;
import org.apache.juneau.http.response.BadRequest;
import org.apache.juneau.http.response.InternalServerError;
import org.apache.juneau.http.response.Ok;
import org.apache.juneau.http.response.Unauthorized;

import java.util.UUID;

@Remote(path = "/petstore")
public interface PetStoreClient {

    @RemotePost("/pets")
    Ok addPet(
            @Content CreatePet createPet,
            @Header("E-Tag") UUID etag,
            @Query("debug") boolean debug
    ) throws BadRequest, Unauthorized, InternalServerError;
}

